package cc.linker.steplink.crm.service;

import cc.linker.steplink.crm.commons.domain.WxUser;
import cc.linker.steplink.crm.domain.BindUserDto;
import cc.linker.steplink.crm.response.GlobalException;
import org.apache.ibatis.annotations.Param;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.util.Map;

public interface PersonalService {

    @Deprecated
    Map<String,String> getWxUserInfo(BindUserDto openId, HttpSession session) throws Exception;

    WxUser saveWxH5User(String globalOpenid, String token, String openid) throws GlobalException;

    Map<String,String> getWxUserInfo(HttpServletRequest request) throws Exception;

    Map<String,Object> getCustomerInfoBySourceUserId(String memberCode,String orgId);

    Map<String, Object> getMissCustomerByOpenId(String openid);

    Map<String, Object> addUser(String token,String appCode);

    Map<String, Object> getAppCustomerByAppUserId(String appUserId, String appId);

    Map<String, Object> getAppCustomer(String appUserId, String appId);

    Integer updateAppCustomer(String appUserId, String appId);

    String getOrgByToken(String token);

    Map<String,Object> getAppCustomerByAppUserExpandInfo(String expandInfo, String appId);

    void updatePayOpenIdByCustomerId(String customerId, String payOpenId);

    Map<String, Object> getCustomerByCustomerId(String customerId);

    Map<String, Object> getCustomerByOpenId(String openId);

    Integer getIsVip(String customerId,String orgId);

    WxUser saveRouteUser(String openId, String wxappid,String orgId);

    WxUser getAllUser(String globalopenId, String token, String openId,String orgId,String customerId);

}
